home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / pascal / zindent7.zip / ZINDOC.INC < prev    next >
Text File  |  1987-03-30  |  7KB  |  180 lines

  1.  
  2.  
  3. (*******************************************************************)
  4. (*                                                                 *)
  5. (* Include File                                                    *)
  6. (* System Documentation, v. 0830am, sun, 28.Mar.87, Glen Ellis     *)
  7. (*                                                                 *)
  8. (*******************************************************************)
  9.  
  10.  
  11. (*--------------------*)
  12. procedure pSaySysDoc;
  13.  
  14. (*  purpose: display program documentation
  15. (*           output literal text only
  16. (* *)
  17.  
  18. var
  19. x : nbr;
  20.  
  21. begin (* proc *)
  22.  
  23.    pClearScreen;
  24.  
  25.    writeln('      Documentation:');
  26.    writeln;
  27.    writeln( SysTitle);
  28.    writeln;
  29.    writeln('is written in Borland Turbo Pascal for CP/M and MSDOS systems');
  30.    writeln;
  31.    writeln( SysVersion1);
  32.    writeln;
  33.    writeln( SysVersion2);
  34.    writeln;
  35.    writeln( SysCredit);
  36.    writeln;
  37.  
  38.    pKeyPressed;
  39.  
  40.  
  41.    (*------------------------------------------------------------------------*)
  42.  
  43.    pClearScreen;
  44.  
  45.    writeln(' provides : ');
  46.    writeln('     indenting/formatting function on Source Code files. ');
  47.    writeln;
  48.    writeln(' Keyword parse algoriths are based on Leading KeyWords.  ');
  49.    writeln(' Keyword routines contained in modules "xxxKEYxx.INC" ');
  50.    writeln(' Upper Case forced on Keywords only during parse routines.');
  51.    writeln(' File Output is Right Trimmed.');
  52.    writeln(' The Pascal parsing algorithms start after detecting     ');
  53.    writeln('    a preliminary BEGIN, thus protecting Header area.    ');
  54.    writeln;
  55.    writeln('--- KeyWords for dBASE routine :                         ');
  56.    writeln('    IF, ENDIF,   DO WHILE, ENDDO,    CASE, ENDCASE       ');
  57.    writeln;
  58.    writeln('--- KeyWords for Turbo Pascal routine :                  ');
  59.    writeln('     IF,   ELSE,   CASE,   WHILE,   REPEAT,   RECORD.    ');
  60.    writeln('     BEGIN, END,                                         ');
  61.    writeln;
  62.  
  63.    pKeyPressed;
  64.  
  65.    (*------------------------------------------------------------------------*)
  66.  
  67.    pClearScreen;
  68.  
  69.    writeln;
  70.    writeln(' Leading KeyWords for Turbo Pascal : ');
  71.    writeln;
  72.    writeln(' "IF", "ELSE", "CASE", "WHILE", "REPEAT", "RECORD",  ');
  73.    writeln(' "BEGIN", "END" are recognized ');
  74.    writeln('  if followed by a $0D (carriage return) or $20 (space).');
  75.    writeln;
  76.    writeln(' "BEGIN", "BEGIN " will be recognized as Keywords. ');
  77.    writeln(' Memory Variables such as "BeginJobMarker" are OK. ');
  78.    writeln;
  79.    writeln(' special parse for "END" with semi-colon : ');
  80.    writeln(' "END", "END ", "END;" will be recognized as Keywords.  ');
  81.    writeln(' Memory Variables such as "EndJobMarker" are OK. ');
  82.    writeln;
  83.    writeln(' dBASE-II traps the first four characters of KeyWords,   ');
  84.    writeln(' leaving no room to share KeyWords with memvar names.    ');
  85.    writeln;
  86.  
  87.    pKeyPressed;
  88.  
  89.    (*------------------------------------------------------------------------*)
  90.  
  91.    pClearScreen;
  92.  
  93.    writeln(' provides : ');
  94.    writeln('     indenting/formatting function on Source Code files. ');
  95.    writeln(' 1.> If command line parameters are present,');
  96.    writeln('     then command line is loaded and parsed,');
  97.    writeln('          and default parameters may be installed. ');
  98.    writeln(' 2.> if Command Parm #1 = "/F" ');
  99.    writeln('     then filename list is expected from text file,');
  100.    writeln('          and user is prompted for paramters.');
  101.    writeln(' 3.> if Command Parm #1 = "?" ');
  102.    writeln('     then user input / documentation module is enabled.');
  103.    writeln(' otherwise ');
  104.    writeln(' 4.> if no command line parameters and/or no data file, ');
  105.    writeln('     then user input / documentation module is enabled.');
  106.    writeln;
  107.  
  108.    pKeyPressed;
  109.  
  110.  
  111.    (*------------------------------------------------------------------------*)
  112.  
  113.    pClearScreen;
  114.  
  115.    writeln('    ---> Command : Line Description <---                    ');
  116.    writeln;
  117.    writeln('A>INDENT Source.pas 3 1 0                                    ');
  118.    writeln(' results : infile (identified as Pascal type ".PAS" )        ');
  119.    writeln('           indent = 3, comments included, no line numbers    ');
  120.    writeln(' Parameters :                                                ');
  121.    writeln(' #1 read source file, write target.$$$                       ');
  122.    writeln('    tested for .TYP in these two groups :                    ');
  123.    writeln('               dBASE(.CMD.PRG) / Pascal(.PAS.INC.PRO.FUN)    ');
  124.    writeln('    erase/rename according to source.TYP                     ');
  125.    writeln('    source.BAK, target.$$$, Source.TYP                       ');
  126.    writeln('    default .TYP is Pascal                                   ');
  127.    writeln('    "/F" enables Filelist entry module.                      ');
  128.    writeln('    "?"  enables User entry / documentation module.          ');
  129.    writeln(' #2 indent length 0 -> 79  , default = 3                     ');
  130.    writeln(' #3 comment :  1 = include, 0 = no include , default = 1     ');
  131.    writeln(' #4 linecnt :  1 = numbered line listing, 0 = not numbered   ');
  132.    writeln('    default = no linecount/vertiate                          ');
  133.    writeln(' if missing parameters #2, or #3, or #4                      ');
  134.    writeln('   then default settings are installed for #2, or #3, or #4. ');
  135.    writeln('   defaults = indentnum = 3, comment = true, linecnt = false.');
  136.    writeln;
  137.  
  138.    pKeyPressed;
  139.  
  140.    (*------------------------------------------------------------------------*)
  141.  
  142.    pClearScreen;
  143.  
  144.    writeln;
  145.    writeln('         ---> Command : File Method <---                     ');
  146.    writeln;
  147.    writeln(' #0 reads ',SysPgmName,' for filename list of file.typ ');
  148.    writeln('    written as file.typ , in standard textfile format.');
  149.    writeln;
  150.    writeln(' #1 user prompted for other parameters.');
  151.    writeln;
  152.  
  153.    pKeyPressed;
  154.  
  155.    (*------------------------------------------------------------------------*)
  156.  
  157.    pClearScreen;
  158.  
  159.    writeln;
  160.    writeln('       ---> Command : User Entry Method <---              ');
  161.    writeln;
  162.    writeln(' User prompted for filename.typ.                            ');
  163.    writeln('        "?" shows documentation.                            ');
  164.    writeln(' User prompted for each parameter,                          ');
  165.    writeln('    similar to above descriptions.                          ');
  166.    writeln(' User prompted for special parameters                       ');
  167.    writeln('    relating to programmer/developer control.               ');
  168.    writeln(' User prompted for specific "Program Mode" parameter,       ');
  169.    writeln('    which will allow                                        ');
  170.    writeln('    forced selection of KeyWord routine : "DB", "TP".       ');
  171.    writeln;
  172.  
  173.    pKeyPressed;
  174.  
  175.  
  176. end; (* proc *)
  177.  
  178.  
  179. (*******************************************************************)
  180. (*<<<>>>*)